<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<meta http-equiv="cache-control" content="no-cache">
<title>reflex::BufferedInput Class Reference</title>
<link href="doxygen_tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="doxygen_content.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="top">
 <div id="titlearea">
  <table height="72px" width="100%" cellspacing="0" cellpadding="0">
   <tbody>
    <tr>
     <td width="10%">&nbsp;</td>
     <td><a href="https://github.com/Genivia/RE-flex"><img src="reflex-logo.png"/></a></td>
     <td>
      <div style="float: right; font-size: 18px; font-weight: bold;">reflex::BufferedInput Class Reference</div>
      <br>
      <div style="float: right; font-size: 10px;">updated Thu May 14 2020 by Robert van Engelen</div>
     </td>
     <td width="10%">&nbsp;</td>
    </tr>
   </tbody>
  </table>
 </div>
<!-- Generated by Doxygen 1.8.11 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespacereflex.html">reflex</a></li><li class="navelem"><a class="el" href="classreflex_1_1_buffered_input.html">BufferedInput</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="classreflex_1_1_buffered_input-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">reflex::BufferedInput Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Buffered input.  
 <a href="classreflex_1_1_buffered_input.html#details">More...</a></p>

<p><code>#include &lt;input.h&gt;</code></p>
<div class="dynheader">
Inheritance diagram for reflex::BufferedInput:</div>
<div class="dyncontent">
<div class="center"><img src="classreflex_1_1_buffered_input__inherit__graph.png" border="0" usemap="#reflex_1_1_buffered_input_inherit__map" alt="Inheritance graph"/></div>
<map name="reflex_1_1_buffered_input_inherit__map" id="reflex_1_1_buffered_input_inherit__map">
<area shape="rect" id="node2" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. " alt="" coords="31,5,123,32"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for reflex::BufferedInput:</div>
<div class="dyncontent">
<div class="center"><img src="classreflex_1_1_buffered_input__coll__graph.png" border="0" usemap="#reflex_1_1_buffered_input_coll__map" alt="Collaboration graph"/></div>
<map name="reflex_1_1_buffered_input_coll__map" id="reflex_1_1_buffered_input_coll__map">
<area shape="rect" id="node2" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. " alt="" coords="37,337,129,364"/>
<area shape="rect" id="node3" title="STL class. " alt="" coords="37,248,128,275"/>
<area shape="rect" id="node4" title="STL class. " alt="" coords="18,157,147,199"/>
<area shape="rect" id="node5" title="STL class. " alt="" coords="5,81,160,108"/>
<area shape="rect" id="node6" title="STL class. " alt="" coords="33,5,133,32"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input_1_1dos__streambuf.html">dos_streambuf</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Buffered stream buffer for <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">reflex::Input</a> to read DOS files, replaces CRLF by LF, derived from std::streambuf.  <a href="classreflex_1_1_buffered_input_1_1dos__streambuf.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input_1_1streambuf.html">streambuf</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Buffered stream buffer for <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">reflex::Input</a>, derived from std::streambuf.  <a href="classreflex_1_1_buffered_input_1_1streambuf.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a98937101d21ff72e1662cbde16bafee3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#a98937101d21ff72e1662cbde16bafee3">BufferedInput</a> ()</td></tr>
<tr class="separator:a98937101d21ff72e1662cbde16bafee3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3225216eb7c006f05948727f7c28e821"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#a3225216eb7c006f05948727f7c28e821">BufferedInput</a> (const <a class="el" href="classreflex_1_1_buffered_input.html">BufferedInput</a> &amp;input)</td></tr>
<tr class="memdesc:a3225216eb7c006f05948727f7c28e821"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy constructor.  <a href="#a3225216eb7c006f05948727f7c28e821">More...</a><br /></td></tr>
<tr class="separator:a3225216eb7c006f05948727f7c28e821"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a28d05f4edc92b9dbb1c08a0f3170e0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#a2a28d05f4edc92b9dbb1c08a0f3170e0">BufferedInput</a> (const <a class="el" href="classreflex_1_1_input.html">Input</a> &amp;input)</td></tr>
<tr class="memdesc:a2a28d05f4edc92b9dbb1c08a0f3170e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct buffered input from unbuffered input.  <a href="#a2a28d05f4edc92b9dbb1c08a0f3170e0">More...</a><br /></td></tr>
<tr class="separator:a2a28d05f4edc92b9dbb1c08a0f3170e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae45e77c0e90c0089cc788b236433c02e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classreflex_1_1_buffered_input.html">BufferedInput</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#ae45e77c0e90c0089cc788b236433c02e">operator=</a> (const <a class="el" href="classreflex_1_1_input.html">Input</a> &amp;input)</td></tr>
<tr class="memdesc:ae45e77c0e90c0089cc788b236433c02e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assignment operator from unbuffered input.  <a href="#ae45e77c0e90c0089cc788b236433c02e">More...</a><br /></td></tr>
<tr class="separator:ae45e77c0e90c0089cc788b236433c02e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0dfbf5d174a0f7ab00af078941a40310"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classreflex_1_1_buffered_input.html">BufferedInput</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#a0dfbf5d174a0f7ab00af078941a40310">operator=</a> (const <a class="el" href="classreflex_1_1_buffered_input.html">BufferedInput</a> &amp;input)</td></tr>
<tr class="memdesc:a0dfbf5d174a0f7ab00af078941a40310"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy assignment operator.  <a href="#a0dfbf5d174a0f7ab00af078941a40310">More...</a><br /></td></tr>
<tr class="separator:a0dfbf5d174a0f7ab00af078941a40310"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa06e3fff63046c58052df83f756843d9"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#aa06e3fff63046c58052df83f756843d9">BufferedInput</a> (FILE *<a class="el" href="classreflex_1_1_input.html#a9f64e5c813a08fd7a65819074ffcd20a">file</a>, <a class="el" href="classreflex_1_1_input.html#a70e8550b0b1649b2cd49b1b872949cc8">file_encoding_type</a> enc, const unsigned short *page=NULL)</td></tr>
<tr class="memdesc:aa06e3fff63046c58052df83f756843d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct buffered input character sequence from an open FILE* file descriptor, using the specified file encoding.  <a href="#aa06e3fff63046c58052df83f756843d9">More...</a><br /></td></tr>
<tr class="separator:aa06e3fff63046c58052df83f756843d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4c104c9e1230db7e3762b10fcb7fb97"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#ad4c104c9e1230db7e3762b10fcb7fb97">operator bool</a> ()</td></tr>
<tr class="separator:ad4c104c9e1230db7e3762b10fcb7fb97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3711c48f04f6431bf79ce3c20c9a4e2a"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#a3711c48f04f6431bf79ce3c20c9a4e2a">size</a> ()</td></tr>
<tr class="memdesc:a3711c48f04f6431bf79ce3c20c9a4e2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the size of the input character sequence in number of ASCII/UTF-8 bytes (zero if size is not determinable from a <code>FILE*</code> or <code>std::istream</code> source).  <a href="#a3711c48f04f6431bf79ce3c20c9a4e2a">More...</a><br /></td></tr>
<tr class="separator:a3711c48f04f6431bf79ce3c20c9a4e2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37ecf91f3d350f08bbaf970376a86a81"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#a37ecf91f3d350f08bbaf970376a86a81">good</a> ()</td></tr>
<tr class="memdesc:a37ecf91f3d350f08bbaf970376a86a81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if input is available.  <a href="#a37ecf91f3d350f08bbaf970376a86a81">More...</a><br /></td></tr>
<tr class="separator:a37ecf91f3d350f08bbaf970376a86a81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b2ad851e658935278c83ef32490521b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#a5b2ad851e658935278c83ef32490521b">eof</a> ()</td></tr>
<tr class="memdesc:a5b2ad851e658935278c83ef32490521b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if input reached EOF.  <a href="#a5b2ad851e658935278c83ef32490521b">More...</a><br /></td></tr>
<tr class="separator:a5b2ad851e658935278c83ef32490521b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5d1a637f524c1f68dbd5d21bf892642"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#ab5d1a637f524c1f68dbd5d21bf892642">peek</a> ()</td></tr>
<tr class="memdesc:ab5d1a637f524c1f68dbd5d21bf892642"><td class="mdescLeft">&#160;</td><td class="mdescRight">Peek a single character (unsigned char 0..255) or EOF (-1) when end-of-input is reached.  <a href="#ab5d1a637f524c1f68dbd5d21bf892642">More...</a><br /></td></tr>
<tr class="separator:ab5d1a637f524c1f68dbd5d21bf892642"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45889cf82c631c42079969798dd37893"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#a45889cf82c631c42079969798dd37893">get</a> ()</td></tr>
<tr class="memdesc:a45889cf82c631c42079969798dd37893"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a single character (unsigned char 0..255) or EOF (-1) when end-of-input is reached.  <a href="#a45889cf82c631c42079969798dd37893">More...</a><br /></td></tr>
<tr class="separator:a45889cf82c631c42079969798dd37893"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad09e26415f8ac625ecd7e62932bd4dc1"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#ad09e26415f8ac625ecd7e62932bd4dc1">get</a> (char *s, size_t n)</td></tr>
<tr class="memdesc:ad09e26415f8ac625ecd7e62932bd4dc1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy character sequence data into buffer.  <a href="#ad09e26415f8ac625ecd7e62932bd4dc1">More...</a><br /></td></tr>
<tr class="separator:ad09e26415f8ac625ecd7e62932bd4dc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classreflex_1_1_input"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classreflex_1_1_input')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classreflex_1_1_input.html">reflex::Input</a></td></tr>
<tr class="memitem:a8b27ba4af25d4add45d0e09bc2420e22 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a8b27ba4af25d4add45d0e09bc2420e22">Input</a> ()</td></tr>
<tr class="memdesc:a8b27ba4af25d4add45d0e09bc2420e22 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct empty input character sequence.  <a href="#a8b27ba4af25d4add45d0e09bc2420e22">More...</a><br /></td></tr>
<tr class="separator:a8b27ba4af25d4add45d0e09bc2420e22 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c6455e576c90b478789928db6066267 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a7c6455e576c90b478789928db6066267">Input</a> (const <a class="el" href="classreflex_1_1_input.html">Input</a> &amp;input)</td></tr>
<tr class="memdesc:a7c6455e576c90b478789928db6066267 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy constructor (with intended "move semantics" as internal state is shared, should not rely on using the rhs after copying).  <a href="#a7c6455e576c90b478789928db6066267">More...</a><br /></td></tr>
<tr class="separator:a7c6455e576c90b478789928db6066267 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a578996e4f28eed9c8ee2a7997d51a3c6 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a578996e4f28eed9c8ee2a7997d51a3c6">Input</a> (const char *<a class="el" href="classreflex_1_1_input.html#aa3638edd734832d054f3939b8665a77e">cstring</a>, size_t <a class="el" href="classreflex_1_1_input.html#a4d1e21f3356426598bc6dc139812de31">size</a>)</td></tr>
<tr class="memdesc:a578996e4f28eed9c8ee2a7997d51a3c6 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct input character sequence from a char* string.  <a href="#a578996e4f28eed9c8ee2a7997d51a3c6">More...</a><br /></td></tr>
<tr class="separator:a578996e4f28eed9c8ee2a7997d51a3c6 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09465211ad37559885e2e85e9fc18791 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a09465211ad37559885e2e85e9fc18791">Input</a> (const char *<a class="el" href="classreflex_1_1_input.html#aa3638edd734832d054f3939b8665a77e">cstring</a>)</td></tr>
<tr class="memdesc:a09465211ad37559885e2e85e9fc18791 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct input character sequence from a NUL-terminated string.  <a href="#a09465211ad37559885e2e85e9fc18791">More...</a><br /></td></tr>
<tr class="separator:a09465211ad37559885e2e85e9fc18791 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec4d78f4c05c7e5ffdaa723bf58ffaea inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#aec4d78f4c05c7e5ffdaa723bf58ffaea">Input</a> (const std::string &amp;string)</td></tr>
<tr class="memdesc:aec4d78f4c05c7e5ffdaa723bf58ffaea inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct input character sequence from a std::string.  <a href="#aec4d78f4c05c7e5ffdaa723bf58ffaea">More...</a><br /></td></tr>
<tr class="separator:aec4d78f4c05c7e5ffdaa723bf58ffaea inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa309946c0340260b7213ff803544542b inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#aa309946c0340260b7213ff803544542b">Input</a> (const std::string *string)</td></tr>
<tr class="memdesc:aa309946c0340260b7213ff803544542b inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct input character sequence from a pointer to a std::string.  <a href="#aa309946c0340260b7213ff803544542b">More...</a><br /></td></tr>
<tr class="separator:aa309946c0340260b7213ff803544542b inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a057e2908a65efbb3ba0c445b724fe100 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a057e2908a65efbb3ba0c445b724fe100">Input</a> (const wchar_t *<a class="el" href="classreflex_1_1_input.html#aab0fd4f66d1a00060245ba2d6e427473">wstring</a>)</td></tr>
<tr class="memdesc:a057e2908a65efbb3ba0c445b724fe100 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct input character sequence from a NUL-terminated wide character string.  <a href="#a057e2908a65efbb3ba0c445b724fe100">More...</a><br /></td></tr>
<tr class="separator:a057e2908a65efbb3ba0c445b724fe100 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c0d90a9095c8af1a09e6baa04710bc4 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a4c0d90a9095c8af1a09e6baa04710bc4">Input</a> (const std::wstring &amp;<a class="el" href="classreflex_1_1_input.html#aab0fd4f66d1a00060245ba2d6e427473">wstring</a>)</td></tr>
<tr class="memdesc:a4c0d90a9095c8af1a09e6baa04710bc4 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct input character sequence from a std::wstring (may contain UTF-16 surrogate pairs).  <a href="#a4c0d90a9095c8af1a09e6baa04710bc4">More...</a><br /></td></tr>
<tr class="separator:a4c0d90a9095c8af1a09e6baa04710bc4 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02c30dabe3972582d662517d42cf75a4 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a02c30dabe3972582d662517d42cf75a4">Input</a> (const std::wstring *<a class="el" href="classreflex_1_1_input.html#aab0fd4f66d1a00060245ba2d6e427473">wstring</a>)</td></tr>
<tr class="memdesc:a02c30dabe3972582d662517d42cf75a4 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct input character sequence from a pointer to a std::wstring (may contain UTF-16 surrogate pairs).  <a href="#a02c30dabe3972582d662517d42cf75a4">More...</a><br /></td></tr>
<tr class="separator:a02c30dabe3972582d662517d42cf75a4 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a13135ec6cf70ed5d16396ad2db5b0c7b inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a13135ec6cf70ed5d16396ad2db5b0c7b">Input</a> (FILE *<a class="el" href="classreflex_1_1_input.html#a9f64e5c813a08fd7a65819074ffcd20a">file</a>)</td></tr>
<tr class="memdesc:a13135ec6cf70ed5d16396ad2db5b0c7b inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct input character sequence from an open FILE* file descriptor, supports UTF-8 conversion from UTF-16 and UTF-32.  <a href="#a13135ec6cf70ed5d16396ad2db5b0c7b">More...</a><br /></td></tr>
<tr class="separator:a13135ec6cf70ed5d16396ad2db5b0c7b inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a609f0e4676584113831ea9bff651dada inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a609f0e4676584113831ea9bff651dada">Input</a> (FILE *<a class="el" href="classreflex_1_1_input.html#a9f64e5c813a08fd7a65819074ffcd20a">file</a>, <a class="el" href="classreflex_1_1_input.html#a70e8550b0b1649b2cd49b1b872949cc8">file_encoding_type</a> enc, const unsigned short *page=NULL)</td></tr>
<tr class="memdesc:a609f0e4676584113831ea9bff651dada inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct input character sequence from an open FILE* file descriptor, using the specified file encoding.  <a href="#a609f0e4676584113831ea9bff651dada">More...</a><br /></td></tr>
<tr class="separator:a609f0e4676584113831ea9bff651dada inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a25a1b7ebdda31f175e0139713212f1 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a2a25a1b7ebdda31f175e0139713212f1">Input</a> (std::istream &amp;<a class="el" href="classreflex_1_1_input.html#a42f00a3d62dd4627413a9f8180f2860b">istream</a>)</td></tr>
<tr class="memdesc:a2a25a1b7ebdda31f175e0139713212f1 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct input character sequence from a std::istream.  <a href="#a2a25a1b7ebdda31f175e0139713212f1">More...</a><br /></td></tr>
<tr class="separator:a2a25a1b7ebdda31f175e0139713212f1 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5a96b263a02333550b1d7d6cd21d776 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#af5a96b263a02333550b1d7d6cd21d776">Input</a> (std::istream *<a class="el" href="classreflex_1_1_input.html#a42f00a3d62dd4627413a9f8180f2860b">istream</a>)</td></tr>
<tr class="memdesc:af5a96b263a02333550b1d7d6cd21d776 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct input character sequence from a pointer to a std::istream.  <a href="#af5a96b263a02333550b1d7d6cd21d776">More...</a><br /></td></tr>
<tr class="separator:af5a96b263a02333550b1d7d6cd21d776 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a822489aba32803c08ed6db9f50f2caf5 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classreflex_1_1_input.html">Input</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a822489aba32803c08ed6db9f50f2caf5">operator=</a> (const <a class="el" href="classreflex_1_1_input.html">Input</a> &amp;input)</td></tr>
<tr class="memdesc:a822489aba32803c08ed6db9f50f2caf5 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy assignment operator.  <a href="#a822489aba32803c08ed6db9f50f2caf5">More...</a><br /></td></tr>
<tr class="separator:a822489aba32803c08ed6db9f50f2caf5 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab3031e26bf48ef36126f7d789793b4a3 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#ab3031e26bf48ef36126f7d789793b4a3">operator const char *</a> () const </td></tr>
<tr class="memdesc:ab3031e26bf48ef36126f7d789793b4a3 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cast this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> object to a string, returns NULL when this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> is not a string.  <a href="#ab3031e26bf48ef36126f7d789793b4a3">More...</a><br /></td></tr>
<tr class="separator:ab3031e26bf48ef36126f7d789793b4a3 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae77a9713fc879a2b9338893769e8f617 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#ae77a9713fc879a2b9338893769e8f617">operator const wchar_t *</a> () const </td></tr>
<tr class="memdesc:ae77a9713fc879a2b9338893769e8f617 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cast this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> object to a wide character string, returns NULL when this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> is not a wide string.  <a href="#ae77a9713fc879a2b9338893769e8f617">More...</a><br /></td></tr>
<tr class="separator:ae77a9713fc879a2b9338893769e8f617 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7432231f90678cb115ee3dfa82a2a53b inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a7432231f90678cb115ee3dfa82a2a53b">operator FILE *</a> () const </td></tr>
<tr class="memdesc:a7432231f90678cb115ee3dfa82a2a53b inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cast this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> object to a file descriptor FILE*, returns NULL when this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> is not a FILE*.  <a href="#a7432231f90678cb115ee3dfa82a2a53b">More...</a><br /></td></tr>
<tr class="separator:a7432231f90678cb115ee3dfa82a2a53b inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4931b283c79df0c3541e4000ef065b53 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a4931b283c79df0c3541e4000ef065b53">operator std::istream *</a> () const </td></tr>
<tr class="memdesc:a4931b283c79df0c3541e4000ef065b53 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cast this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> object to a std::istream*, returns NULL when this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> is not a std::istream.  <a href="#a4931b283c79df0c3541e4000ef065b53">More...</a><br /></td></tr>
<tr class="separator:a4931b283c79df0c3541e4000ef065b53 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab728a9612c2ddd8e30f97bf094dfbe6c inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#ab728a9612c2ddd8e30f97bf094dfbe6c">operator bool</a> () const </td></tr>
<tr class="separator:ab728a9612c2ddd8e30f97bf094dfbe6c inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3638edd734832d054f3939b8665a77e inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#aa3638edd734832d054f3939b8665a77e">cstring</a> () const </td></tr>
<tr class="memdesc:aa3638edd734832d054f3939b8665a77e inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the remaining string of this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> object, returns NULL when this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> is not a string.  <a href="#aa3638edd734832d054f3939b8665a77e">More...</a><br /></td></tr>
<tr class="separator:aa3638edd734832d054f3939b8665a77e inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab0fd4f66d1a00060245ba2d6e427473 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">const wchar_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#aab0fd4f66d1a00060245ba2d6e427473">wstring</a> () const </td></tr>
<tr class="memdesc:aab0fd4f66d1a00060245ba2d6e427473 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the remaining wide character string of this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> object, returns NULL when this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> is not a wide string.  <a href="#aab0fd4f66d1a00060245ba2d6e427473">More...</a><br /></td></tr>
<tr class="separator:aab0fd4f66d1a00060245ba2d6e427473 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f64e5c813a08fd7a65819074ffcd20a inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">FILE *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a9f64e5c813a08fd7a65819074ffcd20a">file</a> () const </td></tr>
<tr class="memdesc:a9f64e5c813a08fd7a65819074ffcd20a inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the FILE* of this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> object, returns NULL when this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> is not a FILE*.  <a href="#a9f64e5c813a08fd7a65819074ffcd20a">More...</a><br /></td></tr>
<tr class="separator:a9f64e5c813a08fd7a65819074ffcd20a inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42f00a3d62dd4627413a9f8180f2860b inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">std::istream *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a42f00a3d62dd4627413a9f8180f2860b">istream</a> () const </td></tr>
<tr class="memdesc:a42f00a3d62dd4627413a9f8180f2860b inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the std::istream of this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> object, returns NULL when this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> is not a std::istream.  <a href="#a42f00a3d62dd4627413a9f8180f2860b">More...</a><br /></td></tr>
<tr class="separator:a42f00a3d62dd4627413a9f8180f2860b inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d1e21f3356426598bc6dc139812de31 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a4d1e21f3356426598bc6dc139812de31">size</a> ()</td></tr>
<tr class="memdesc:a4d1e21f3356426598bc6dc139812de31 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the size of the input character sequence in number of ASCII/UTF-8 bytes (zero if size is not determinable from a <code>FILE*</code> or <code>std::istream</code> source).  <a href="#a4d1e21f3356426598bc6dc139812de31">More...</a><br /></td></tr>
<tr class="separator:a4d1e21f3356426598bc6dc139812de31 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21e2de67c899897d38e39eedb2c8ce3a inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a21e2de67c899897d38e39eedb2c8ce3a">assigned</a> () const </td></tr>
<tr class="memdesc:a21e2de67c899897d38e39eedb2c8ce3a inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> object was assigned a character sequence.  <a href="#a21e2de67c899897d38e39eedb2c8ce3a">More...</a><br /></td></tr>
<tr class="separator:a21e2de67c899897d38e39eedb2c8ce3a inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d8062373d7ce9522e1962af7fd9a49a inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a2d8062373d7ce9522e1962af7fd9a49a">clear</a> ()</td></tr>
<tr class="memdesc:a2d8062373d7ce9522e1962af7fd9a49a inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear this <a class="el" href="classreflex_1_1_input.html" title="Input character sequence class for unified access to sources of input text. ">Input</a> by unassigning it.  <a href="#a2d8062373d7ce9522e1962af7fd9a49a">More...</a><br /></td></tr>
<tr class="separator:a2d8062373d7ce9522e1962af7fd9a49a inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad889f01290e7a5cdfd14b4c662635ff8 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#ad889f01290e7a5cdfd14b4c662635ff8">good</a> () const </td></tr>
<tr class="memdesc:ad889f01290e7a5cdfd14b4c662635ff8 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if input is available.  <a href="#ad889f01290e7a5cdfd14b4c662635ff8">More...</a><br /></td></tr>
<tr class="separator:ad889f01290e7a5cdfd14b4c662635ff8 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae66cbeb78ac9c238f08ce5aa570b1fb7 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#ae66cbeb78ac9c238f08ce5aa570b1fb7">eof</a> () const </td></tr>
<tr class="memdesc:ae66cbeb78ac9c238f08ce5aa570b1fb7 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if input reached EOF.  <a href="#ae66cbeb78ac9c238f08ce5aa570b1fb7">More...</a><br /></td></tr>
<tr class="separator:ae66cbeb78ac9c238f08ce5aa570b1fb7 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48e95f4f8c324d1249ee45b41648f114 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a48e95f4f8c324d1249ee45b41648f114">get</a> ()</td></tr>
<tr class="memdesc:a48e95f4f8c324d1249ee45b41648f114 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a single character (unsigned char 0..255) or EOF (-1) when end-of-input is reached.  <a href="#a48e95f4f8c324d1249ee45b41648f114">More...</a><br /></td></tr>
<tr class="separator:a48e95f4f8c324d1249ee45b41648f114 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a3830a022486d78670f01003b56d5e5 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a3a3830a022486d78670f01003b56d5e5">get</a> (char *s, size_t n)</td></tr>
<tr class="memdesc:a3a3830a022486d78670f01003b56d5e5 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy character sequence data into buffer.  <a href="#a3a3830a022486d78670f01003b56d5e5">More...</a><br /></td></tr>
<tr class="separator:a3a3830a022486d78670f01003b56d5e5 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25682c7ebc7df115ade370d9d21ed888 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a25682c7ebc7df115ade370d9d21ed888">file_encoding</a> (<a class="el" href="classreflex_1_1_input.html#a70e8550b0b1649b2cd49b1b872949cc8">file_encoding_type</a> enc, const unsigned short *page=NULL)</td></tr>
<tr class="memdesc:a25682c7ebc7df115ade370d9d21ed888 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set encoding for <code>FILE*</code> input.  <a href="#a25682c7ebc7df115ade370d9d21ed888">More...</a><br /></td></tr>
<tr class="separator:a25682c7ebc7df115ade370d9d21ed888 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae553aa63a3a04e836b8aed8ef524a92e inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classreflex_1_1_input.html#a70e8550b0b1649b2cd49b1b872949cc8">file_encoding_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#ae553aa63a3a04e836b8aed8ef524a92e">file_encoding</a> () const </td></tr>
<tr class="memdesc:ae553aa63a3a04e836b8aed8ef524a92e inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get encoding of the current <code>FILE*</code> input.  <a href="#ae553aa63a3a04e836b8aed8ef524a92e">More...</a><br /></td></tr>
<tr class="separator:ae553aa63a3a04e836b8aed8ef524a92e inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b77d701d8ad80bd4e235e397c180bd5 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a3b77d701d8ad80bd4e235e397c180bd5">init</a> ()</td></tr>
<tr class="memdesc:a3b77d701d8ad80bd4e235e397c180bd5 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize the state after (re)setting the input source, auto-detects UTF BOM in FILE* input if the file size is known.  <a href="#a3b77d701d8ad80bd4e235e397c180bd5">More...</a><br /></td></tr>
<tr class="separator:a3b77d701d8ad80bd4e235e397c180bd5 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2504b809d5be558d426618737c3e168d inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a2504b809d5be558d426618737c3e168d">file_init</a> ()</td></tr>
<tr class="memdesc:a2504b809d5be558d426618737c3e168d inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by <a class="el" href="classreflex_1_1_input.html#a3b77d701d8ad80bd4e235e397c180bd5" title="Initialize the state after (re)setting the input source, auto-detects UTF BOM in FILE* input if the f...">init()</a> for a FILE*.  <a href="#a2504b809d5be558d426618737c3e168d">More...</a><br /></td></tr>
<tr class="separator:a2504b809d5be558d426618737c3e168d inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ba3f1e2d412fafce6245f38b4381fcb inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a7ba3f1e2d412fafce6245f38b4381fcb">wstring_size</a> ()</td></tr>
<tr class="memdesc:a7ba3f1e2d412fafce6245f38b4381fcb inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by <a class="el" href="classreflex_1_1_input.html#a4d1e21f3356426598bc6dc139812de31" title="Get the size of the input character sequence in number of ASCII/UTF-8 bytes (zero if size is not dete...">size()</a> for a wstring.  <a href="#a7ba3f1e2d412fafce6245f38b4381fcb">More...</a><br /></td></tr>
<tr class="separator:a7ba3f1e2d412fafce6245f38b4381fcb inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d09f141e2ced0bc27129809cdbfc4f1 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a7d09f141e2ced0bc27129809cdbfc4f1">file_size</a> ()</td></tr>
<tr class="memdesc:a7d09f141e2ced0bc27129809cdbfc4f1 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by <a class="el" href="classreflex_1_1_input.html#a4d1e21f3356426598bc6dc139812de31" title="Get the size of the input character sequence in number of ASCII/UTF-8 bytes (zero if size is not dete...">size()</a> for a FILE*.  <a href="#a7d09f141e2ced0bc27129809cdbfc4f1">More...</a><br /></td></tr>
<tr class="separator:a7d09f141e2ced0bc27129809cdbfc4f1 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a603cfde978e8ff1153073540ff39aae8 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a603cfde978e8ff1153073540ff39aae8">istream_size</a> ()</td></tr>
<tr class="memdesc:a603cfde978e8ff1153073540ff39aae8 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by <a class="el" href="classreflex_1_1_input.html#a4d1e21f3356426598bc6dc139812de31" title="Get the size of the input character sequence in number of ASCII/UTF-8 bytes (zero if size is not dete...">size()</a> for a std::istream.  <a href="#a603cfde978e8ff1153073540ff39aae8">More...</a><br /></td></tr>
<tr class="separator:a603cfde978e8ff1153073540ff39aae8 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37dd7c46da3413a52866bee4bb060cc5 inherit pub_methods_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a37dd7c46da3413a52866bee4bb060cc5">file_get</a> (char *s, size_t n)</td></tr>
<tr class="memdesc:a37dd7c46da3413a52866bee4bb060cc5 inherit pub_methods_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implements <a class="el" href="classreflex_1_1_input.html#a48e95f4f8c324d1249ee45b41648f114" title="Get a single character (unsigned char 0..255) or EOF (-1) when end-of-input is reached. ">get()</a> on a FILE*.  <a href="#a37dd7c46da3413a52866bee4bb060cc5">More...</a><br /></td></tr>
<tr class="separator:a37dd7c46da3413a52866bee4bb060cc5 inherit pub_methods_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr class="memitem:ad47636582d36c83d3e852281fcadf4b9"><td class="memItemLeft" align="right" valign="top">static const size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#ad47636582d36c83d3e852281fcadf4b9">SIZE</a> = 16384</td></tr>
<tr class="memdesc:ad47636582d36c83d3e852281fcadf4b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Buffer size.  <a href="#ad47636582d36c83d3e852281fcadf4b9">More...</a><br /></td></tr>
<tr class="separator:ad47636582d36c83d3e852281fcadf4b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:aeec63d45b8b627587dac70867a3d183c"><td class="memItemLeft" align="right" valign="top">char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#aeec63d45b8b627587dac70867a3d183c">buf_</a> [<a class="el" href="classreflex_1_1_buffered_input.html#ad47636582d36c83d3e852281fcadf4b9">SIZE</a>]</td></tr>
<tr class="separator:aeec63d45b8b627587dac70867a3d183c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c58223153cbae41551362d18db59fd2"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#a1c58223153cbae41551362d18db59fd2">len_</a></td></tr>
<tr class="separator:a1c58223153cbae41551362d18db59fd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95721bf7415521b0941bf215376cba78"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_buffered_input.html#a95721bf7415521b0941bf215376cba78">pos_</a></td></tr>
<tr class="separator:a95721bf7415521b0941bf215376cba78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classreflex_1_1_input"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classreflex_1_1_input')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classreflex_1_1_input.html">reflex::Input</a></td></tr>
<tr class="memitem:ac621d556b409c90464780ea44b8d6570 inherit pro_attribs_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#ac621d556b409c90464780ea44b8d6570">cstring_</a></td></tr>
<tr class="memdesc:ac621d556b409c90464780ea44b8d6570 inherit pro_attribs_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">char string input (when non-null) of length <a class="el" href="classreflex_1_1_input.html#a4ca4ea90ef6f28c106a6811ff21bcc2b" title="size of the remaining input in bytes (size_ == 0 may indicate size is not set) ">reflex::Input::size_</a>  <a href="#ac621d556b409c90464780ea44b8d6570">More...</a><br /></td></tr>
<tr class="separator:ac621d556b409c90464780ea44b8d6570 inherit pro_attribs_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6107c7aabf9c28a777c3942442c3b22f inherit pro_attribs_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">const wchar_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a6107c7aabf9c28a777c3942442c3b22f">wstring_</a></td></tr>
<tr class="memdesc:a6107c7aabf9c28a777c3942442c3b22f inherit pro_attribs_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">NUL-terminated wide string input (when non-null)  <a href="#a6107c7aabf9c28a777c3942442c3b22f">More...</a><br /></td></tr>
<tr class="separator:a6107c7aabf9c28a777c3942442c3b22f inherit pro_attribs_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9eac97d0e608b436ab2c10620e68fb5 inherit pro_attribs_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">FILE *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#ae9eac97d0e608b436ab2c10620e68fb5">file_</a></td></tr>
<tr class="memdesc:ae9eac97d0e608b436ab2c10620e68fb5 inherit pro_attribs_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">FILE* input (when non-null)  <a href="#ae9eac97d0e608b436ab2c10620e68fb5">More...</a><br /></td></tr>
<tr class="separator:ae9eac97d0e608b436ab2c10620e68fb5 inherit pro_attribs_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5293a8f00869af77ce8036312d78591c inherit pro_attribs_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">std::istream *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a5293a8f00869af77ce8036312d78591c">istream_</a></td></tr>
<tr class="memdesc:a5293a8f00869af77ce8036312d78591c inherit pro_attribs_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">stream input (when non-null)  <a href="#a5293a8f00869af77ce8036312d78591c">More...</a><br /></td></tr>
<tr class="separator:a5293a8f00869af77ce8036312d78591c inherit pro_attribs_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ca4ea90ef6f28c106a6811ff21bcc2b inherit pro_attribs_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a4ca4ea90ef6f28c106a6811ff21bcc2b">size_</a></td></tr>
<tr class="memdesc:a4ca4ea90ef6f28c106a6811ff21bcc2b inherit pro_attribs_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">size of the remaining input in bytes (size_ == 0 may indicate size is not set)  <a href="#a4ca4ea90ef6f28c106a6811ff21bcc2b">More...</a><br /></td></tr>
<tr class="separator:a4ca4ea90ef6f28c106a6811ff21bcc2b inherit pro_attribs_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2fb61be8907f3204e7b3583aaa5b72da inherit pro_attribs_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a2fb61be8907f3204e7b3583aaa5b72da">utf8_</a> [8]</td></tr>
<tr class="memdesc:a2fb61be8907f3204e7b3583aaa5b72da inherit pro_attribs_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">UTF-8 normalization buffer.  <a href="#a2fb61be8907f3204e7b3583aaa5b72da">More...</a><br /></td></tr>
<tr class="separator:a2fb61be8907f3204e7b3583aaa5b72da inherit pro_attribs_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a371264ce1908a198cc11a7d6990ccbcc inherit pro_attribs_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">unsigned short&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a371264ce1908a198cc11a7d6990ccbcc">uidx_</a></td></tr>
<tr class="memdesc:a371264ce1908a198cc11a7d6990ccbcc inherit pro_attribs_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">index in utf8_[] or &gt;= 8 when unused  <a href="#a371264ce1908a198cc11a7d6990ccbcc">More...</a><br /></td></tr>
<tr class="separator:a371264ce1908a198cc11a7d6990ccbcc inherit pro_attribs_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8877e55c75a97a09e3e9e2fb564b1774 inherit pro_attribs_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classreflex_1_1_input.html#a70e8550b0b1649b2cd49b1b872949cc8">file_encoding_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a8877e55c75a97a09e3e9e2fb564b1774">utfx_</a></td></tr>
<tr class="memdesc:a8877e55c75a97a09e3e9e2fb564b1774 inherit pro_attribs_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="structreflex_1_1_input_1_1file__encoding.html" title="Common file_encoding constants. ">file_encoding</a>  <a href="#a8877e55c75a97a09e3e9e2fb564b1774">More...</a><br /></td></tr>
<tr class="separator:a8877e55c75a97a09e3e9e2fb564b1774 inherit pro_attribs_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:accc6c55cd219a6717e536bd6c9f0606d inherit pro_attribs_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">const unsigned short *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#accc6c55cd219a6717e536bd6c9f0606d">page_</a></td></tr>
<tr class="memdesc:accc6c55cd219a6717e536bd6c9f0606d inherit pro_attribs_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">custom code page  <a href="#accc6c55cd219a6717e536bd6c9f0606d">More...</a><br /></td></tr>
<tr class="separator:accc6c55cd219a6717e536bd6c9f0606d inherit pro_attribs_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_types_classreflex_1_1_input"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classreflex_1_1_input')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classreflex_1_1_input.html">reflex::Input</a></td></tr>
<tr class="memitem:a70e8550b0b1649b2cd49b1b872949cc8 inherit pub_types_classreflex_1_1_input"><td class="memItemLeft" align="right" valign="top">typedef unsigned short&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classreflex_1_1_input.html#a70e8550b0b1649b2cd49b1b872949cc8">file_encoding_type</a></td></tr>
<tr class="memdesc:a70e8550b0b1649b2cd49b1b872949cc8 inherit pub_types_classreflex_1_1_input"><td class="mdescLeft">&#160;</td><td class="mdescRight">Common <a class="el" href="structreflex_1_1_input_1_1file__encoding.html" title="Common file_encoding constants. ">file_encoding</a> constants type.  <a href="#a70e8550b0b1649b2cd49b1b872949cc8">More...</a><br /></td></tr>
<tr class="separator:a70e8550b0b1649b2cd49b1b872949cc8 inherit pub_types_classreflex_1_1_input"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Buffered input. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a98937101d21ff72e1662cbde16bafee3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">reflex::BufferedInput::BufferedInput </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Copy constructor (with intended "move semantics" as internal state is shared, should not rely on using the rhs after copying). Construct empty buffered input. </p>

</div>
</div>
<a class="anchor" id="a3225216eb7c006f05948727f7c28e821"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">reflex::BufferedInput::BufferedInput </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classreflex_1_1_buffered_input.html">BufferedInput</a> &amp;&#160;</td>
          <td class="paramname"><em>input</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Copy constructor. </p>

</div>
</div>
<a class="anchor" id="a2a28d05f4edc92b9dbb1c08a0f3170e0"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">reflex::BufferedInput::BufferedInput </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classreflex_1_1_input.html">Input</a> &amp;&#160;</td>
          <td class="paramname"><em>input</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Construct buffered input from unbuffered input. </p>

</div>
</div>
<a class="anchor" id="aa06e3fff63046c58052df83f756843d9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">reflex::BufferedInput::BufferedInput </td>
          <td>(</td>
          <td class="paramtype">FILE *&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classreflex_1_1_input.html#a70e8550b0b1649b2cd49b1b872949cc8">file_encoding_type</a>&#160;</td>
          <td class="paramname"><em>enc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const unsigned short *&#160;</td>
          <td class="paramname"><em>page</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Construct buffered input character sequence from an open FILE* file descriptor, using the specified file encoding. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">file</td><td>input file </td></tr>
    <tr><td class="paramname">enc</td><td>file_encoding (when UTF BOM is not present) </td></tr>
    <tr><td class="paramname">page</td><td>code page for <a class="el" href="structreflex_1_1_input_1_1file__encoding.html#a76935cbd4a24d36af7e3ebdd5772aeb9" title="custom code page ">file_encoding::custom</a> </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a5b2ad851e658935278c83ef32490521b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool reflex::BufferedInput::eof </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Check if input reached EOF. </p>
<dl class="section return"><dt>Returns</dt><dd>true if input is at EOF and no characters are available </dd></dl>

</div>
</div>
<a class="anchor" id="a45889cf82c631c42079969798dd37893"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int reflex::BufferedInput::get </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get a single character (unsigned char 0..255) or EOF (-1) when end-of-input is reached. </p>

</div>
</div>
<a class="anchor" id="ad09e26415f8ac625ecd7e62932bd4dc1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">size_t reflex::BufferedInput::get </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>n</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Copy character sequence data into buffer. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">s</td><td>points to the string buffer to fill with input </td></tr>
    <tr><td class="paramname">n</td><td>size of buffer pointed to by s </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a37ecf91f3d350f08bbaf970376a86a81"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool reflex::BufferedInput::good </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Check if input is available. </p>
<dl class="section return"><dt>Returns</dt><dd>true if a non-empty sequence of characters is available to get </dd></dl>

</div>
</div>
<a class="anchor" id="ad4c104c9e1230db7e3762b10fcb7fb97"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">reflex::BufferedInput::operator bool </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>true if a non-empty sequence of characters is available to get </dd></dl>

</div>
</div>
<a class="anchor" id="ae45e77c0e90c0089cc788b236433c02e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classreflex_1_1_buffered_input.html">BufferedInput</a>&amp; reflex::BufferedInput::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classreflex_1_1_input.html">Input</a> &amp;&#160;</td>
          <td class="paramname"><em>input</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Assignment operator from unbuffered input. </p>

</div>
</div>
<a class="anchor" id="a0dfbf5d174a0f7ab00af078941a40310"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classreflex_1_1_buffered_input.html">BufferedInput</a>&amp; reflex::BufferedInput::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classreflex_1_1_buffered_input.html">BufferedInput</a> &amp;&#160;</td>
          <td class="paramname"><em>input</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Copy assignment operator. </p>

</div>
</div>
<a class="anchor" id="ab5d1a637f524c1f68dbd5d21bf892642"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int reflex::BufferedInput::peek </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Peek a single character (unsigned char 0..255) or EOF (-1) when end-of-input is reached. </p>

</div>
</div>
<a class="anchor" id="a3711c48f04f6431bf79ce3c20c9a4e2a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">size_t reflex::BufferedInput::size </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get the size of the input character sequence in number of ASCII/UTF-8 bytes (zero if size is not determinable from a <code>FILE*</code> or <code>std::istream</code> source). </p>
<dl class="section return"><dt>Returns</dt><dd>the nonzero number of ASCII/UTF-8 bytes available to read, or zero when source is empty or if size is not determinable e.g. when reading from standard input </dd></dl>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="aeec63d45b8b627587dac70867a3d183c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">char reflex::BufferedInput::buf_[<a class="el" href="classreflex_1_1_buffered_input.html#ad47636582d36c83d3e852281fcadf4b9">SIZE</a>]</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="a1c58223153cbae41551362d18db59fd2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">size_t reflex::BufferedInput::len_</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="a95721bf7415521b0941bf215376cba78"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">size_t reflex::BufferedInput::pos_</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="ad47636582d36c83d3e852281fcadf4b9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const size_t reflex::BufferedInput::SIZE = 16384</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Buffer size. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="input_8h.html">input.h</a></li>
</ul>
</div><!-- contents -->
<hr class="footer">
<address class="footer"><small>
Converted on Thu May 14 2020 13:20:13 by <a target="_blank" href="http://www.doxygen.org/index.html">Doxygen</a> 1.8.11</small></address>
<br>
<div style="height: 246px; background: #DBDBDB;">
</body>
</html>
